exports.countChinese = function (_str) {
  _str = trim(_str); //去除字符串的左右两边空格
  var strlength = _str.length;
  if (!strlength) {
    //如果字符串长度为零，返回零
    return 0;
  }
  var chinese = _str.match(/[\u4e00-\u9fa5]/g); //匹配中文，match返回包含中文的数组
  // return strlength + (chinese ? chinese.length : 0); //计算字符个数

  return chinese ? chinese.length : 0
};

exports.countWord = (data) => {
  var pattern = /[a-zA-Z0-9_\u0392-\u03c9]+|[\u4E00-\u9FFF\u3400-\u4dbf\uf900-\ufaff\u3040-\u309f\uac00-\ud7af]+/g;
  var m = data.match(pattern);
  var count = 0;
  if (m == null) {
    return count;
  }
  for (var i = 0; i < m.length; i++) {
    if (m[i].charCodeAt(0) >= 0x4e00) {
      count += m[i].length;
    } else {
      count += 1;
    }
  }
  return count;
}


function trim(strings) {
  return (strings || "").replace(/^(\s|\u00A0)+|(\s|\u00A0)+$/g, ""); //+表示匹配一次或多次，|表示或者，\s和\u00A0匹配空白字符，/^以……开头，$以……结尾，/g全局匹配,/i忽略大小写
}
